<?php
$base_path = './';
$admin_path = '../';
$main_path = '../../';

$subject_category = array('brak'=>'-','obowiazkowy'=>'O','specjalizacyjny'=>'S','fakultatywnyA'=>'FA',
                            'fakultatywnyB'=>'FB','humanistyczny'=>'H');

require_once($admin_path ."model/Kierunki.php");
require_once($admin_path ."model/Przedmioty.php");
require_once($admin_path ."model/Specjalizacja.php");

 $subject_id = $_GET['subj_category'];
// var_dump($_GET);
// var_dump($_POST);die;

 
$spec_id = $_GET['spec'];
$direction_id = $_GET['direction'];

$model_specjalizacja = new Model_Specjalizacja();
$model_przedmioty = new Model_Przedmioty();
$specialization = $model_specjalizacja->get($spec_id);

//edycja nazwy specjalizacji
if(isset($_POST['spec_name'])){
    if($_POST['spec_name'] != $specialization['nazwa']){
        $model_specjalizacja->update($spec_id,$_POST['spec_name']);
    }
}

$all_subject = $model_przedmioty->getAll();
$subject_for_spec = $model_przedmioty->getAllForSpecjalizacja($spec_id);

$spec_subject = array();
if($subject_for_spec){
foreach($subject_for_spec as $subject){
    $spec_subject[] = $subject['id'];
}
}

//pętla foreach która uzupełni $all_subject o checked
foreach($all_subject as $key => $subject){
    if(in_array($subject['id'],$spec_subject)){
        $all_subject[$key]['checked'] = true;
        $all_subject[$key]['kategoria'] = $subject_for_spec[$key]['kategoria'];
    }else{
        $all_subject[$key]['checked'] = false;
        $all_subject[$key]['kategoria'] = $subject_category['brak'];
    }
}
//if(isset($_POST['subj_category'])){
// var_dump($_POST['subj_category']);die;
//}
//zapis zmian na liscie zaznaczonych przedmiotów
if(isset($_POST['save'])){
    foreach($all_subject as $subject){
        if(isset($_POST[$subject['id']])){
            //sprawdzam, czy wcześniej był już zaznaczony
            //jeśli nie to przypisuje przedmiot do specjalizacji
            if(!in_array($subject['id'],$spec_subject)){
               // var_dump('dodaj'.$subject['id']);
                $category = $subject_category['obowiazkowy'];
                $model_przedmioty->addToSpecjlalizacja($spec_id, $subject['id'],$category);
            }
        }else{
            //sprawdzam, czy wcześniej był już zanznaczony
            //jeśli tak to usuwam połączenie przedmiotu ze specjalizacja
            if(in_array($subject['id'],$spec_subject)){
                //var_dump('usuń'.$subject['id']);
                $model_przedmioty->deleteConnectionWithSpecjlalizacja($spec_id, $subject['id']);
            }
        }
    }
 header('Location:'.$base_path."specialization_edit?direction=$direction_id&spec=$spec_id");
}else if(isset($_POST['update_category'])){ // zmiana kategorii przedmiotu
        foreach($subject_for_spec as $subject){
           $new_category = $_POST[$subject['id']];
           if($new_category != $subject['kategoria']){
                $model_przedmioty->updateCategory($spec_id, $subject['id'],$new_category);}
        }
 header('Location:'.$base_path."specialization_edit?direction=$direction_id&spec=$spec_id");
}

if(isset($_POST['back'])){
     header('Location:'.$base_path.'specialization');
}
//$model_kierunki = new Model_Kierunki();
//$directions = $model_kierunki->getAll();
//if(isset($_GET['kierunek'])){
//    $id_kierunek = $_GET['kierunek'];
//}else{
//    $id_kierunek = $directions[0]['id']; // pierwszy z listy
//}
//$direction_selected = $id_kierunek;
//
//$model_specjalizacja = new Model_Specjalizacja();
//if(isset($_POST['action'])){
//    $action = $_POST['action'];
//    if($action == 'edit'){
//        $edit = true;
//    }else if($action == 'delete'){
//        $spec_id = $_POST['spec_id'];
//        $model_specjalizacja->delete($spec_id);
//    }else if($action == 'add'){
//        $nazwa = $_POST['spec'];
//        $model_specjalizacja->insert($nazwa, $id_kierunek);
//    }
//    header('Location:'.$base_path.'specialization_edit?kierunek='.$id_kierunek);
//}
//
//$specialization = $model_specjalizacja->getAllForKierunek($id_kierunek);
require_once($admin_path."view/specialization_edit.php");
?>
